package com.centsuse.my_redis.es.repositories;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.centsuse.my_redis.es.entity.Book;
import org.springframework.data.elasticsearch.annotations.Query;
import org.springframework.data.elasticsearch.repository.ElasticsearchRepository;
import org.springframework.stereotype.Repository;

import java.awt.print.Pageable;
import java.util.List;

/**
 * @author bobo
 */
@Repository
//泛型是Doc对象和ID的类型
public interface BookEsRepository extends ElasticsearchRepository<Book, String> {
    // 自定义查询：按作者查询（方法名自动解析）
    List<Book> findByAuthor(String author);

    // 复杂查询可使用 @Query 注解
    @Query("{\"match\": {\"title\": {\"query\": \"?0\"}}}")
    Page<Book> findByTitle(String title, Pageable pageable);
}